// Decompiled by GOOSIN CO,LTD Copyright 2010 Pavel Kouznetsov.
// home page: http://www.Goosin.net
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   discussion_garbage_ok.java

package draft.purchase;

import include.get_name_from_ID.getNameFromID;
import include.get_rate_from_ID.getRateFromID;
import include.get_three_kinds.getThreeKinds;
import include.nseer_cookie.counter;
import include.nseer_cookie.exchange;
import include.nseer_db.nseer_db_backup;
import include.nseer_db.nseer_db_backup1;
import java.io.IOException;
import java.sql.ResultSet;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.StringTokenizer;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import javax.servlet.jsp.JspFactory;
import validata.*;

public class discussion_garbage_ok extends HttpServlet
{

	ServletContext application;
	HttpSession session;
	nseer_db_backup erp_db;

	public discussion_garbage_ok()
	{
		erp_db = null;
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response)
		throws IOException, ServletException
	{
		HttpSession dbSession = request.getSession();
		JspFactory _jspxFactory = JspFactory.getDefaultFactory();
		javax.servlet.jsp.PageContext pageContext = _jspxFactory.getPageContext(this, request, response, "", true, 8192, true);
		ServletContext dbApplication = dbSession.getServletContext();
		try
		{
			java.io.PrintWriter out = response.getWriter();
			session = request.getSession();
			counter count = new counter(dbApplication);
			ValidataNumber validata = new ValidataNumber();
			ValidataRecord vr = new ValidataRecord();
			ValidataTag vt = new ValidataTag();
			getThreeKinds getThreeKinds = new getThreeKinds();
			getNameFromID getNameFromID = new getNameFromID();
			getRateFromID getRateFromID = new getRateFromID();
			nseer_db_backup1 purchase_db = new nseer_db_backup1(dbApplication);
			if (purchase_db.conn((String)dbSession.getAttribute("unit_db_name")))
			{
				String register_ID = (String)session.getAttribute("human_IDD");
				String config_id = request.getParameter("config_id");
				String discussion_ID = request.getParameter("discussion_ID");
				String provider_ID = request.getParameter("provider_ID");
				String provider_name = request.getParameter("provider_name");
				String demand_contact_person = request.getParameter("demand_contact_person");
				String demand_contact_person_tel = request.getParameter("demand_contact_person_tel");
				String demand_contact_person_fax = request.getParameter("demand_contact_person_fax");
				String demand_pay_time = request.getParameter("demand_pay_time");
				String check_time = request.getParameter("check_time");
				String checker = request.getParameter("checker");
				String checker_ID = request.getParameter("checker_ID");
				String bodyc = new String(request.getParameter("remark").getBytes("UTF-8"), "UTF-8");
				String remark = exchange.toHtml(bodyc);
				String modify_tag = request.getParameter("modify_tag");
				String product_amount = request.getParameter("product_amount");
				int num = Integer.parseInt(product_amount);
				int n = 0;
				for (int i = 1; i <= num; i++)
				{
					String tem_amount = (new StringBuilder("amount")).append(i).toString();
					String tem_off_discount = (new StringBuilder("off_discount")).append(i).toString();
					String tem_list_price = (new StringBuilder("list_price")).append(i).toString();
					String amount = request.getParameter(tem_amount);
					String off_discount = request.getParameter(tem_off_discount);
					String list_price2 = request.getParameter(tem_list_price);
					StringTokenizer tokenTO2 = new StringTokenizer(list_price2, ",");
					String list_price;
					String list_price1;
					for (list_price = ""; tokenTO2.hasMoreTokens(); list_price = (new StringBuilder(String.valueOf(list_price))).append(list_price1).toString())
						list_price1 = tokenTO2.nextToken();

					if (!validata.validata(amount) || !validata.validata(off_discount) || !validata.validata(list_price))
						n++;
				}

				if (vt.validata((String)dbSession.getAttribute("unit_db_name"), "purchase_discussion", "discussion_ID", discussion_ID, "check_tag").equals("5") || vt.validata((String)dbSession.getAttribute("unit_db_name"), "purchase_discussion", "discussion_ID", discussion_ID, "check_tag").equals("9"))
				{
					if (n == 0)
					{
						String time = "";
						Date now = new Date();
						SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
						time = formatter.format(now);
						String sql = (new StringBuilder("update purchase_discussion set discussion_ID='")).append(discussion_ID).append("',provider_ID='").append(provider_ID).append("',provider_name='").append(provider_name).append("',demand_contact_person='").append(demand_contact_person).append("',demand_contact_person_tel='").append(demand_contact_person_tel).append("',demand_contact_person_fax='").append(demand_contact_person_fax).append("',checker='").append(checker).append("',checker_ID='").append(checker_ID).append("',remark='").append(remark).append("',check_tag='2' where discussion_ID='").append(discussion_ID).append("'").toString();
						purchase_db.executeUpdate(sql);
						try
						{
							int service_count = 0;
							int stock_number = 0;
							int pay_amount_sum = 0;
							double sale_price_sum = 0.0D;
							double cost_price_sum = 0.0D;
							double real_cost_price_sum = 0.0D;
							for (int i = 1; i <= num; i++)
							{
								String tem_product_name = (new StringBuilder("product_name")).append(i).toString();
								String tem_product_ID = (new StringBuilder("product_ID")).append(i).toString();
								String tem_product_describe = (new StringBuilder("product_describe")).append(i).toString();
								String tem_amount = (new StringBuilder("amount")).append(i).toString();
								String tem_off_discount = (new StringBuilder("off_discount")).append(i).toString();
								String tem_list_price = (new StringBuilder("list_price")).append(i).toString();
								String tem_cost_price = (new StringBuilder("cost_price")).append(i).toString();
								String tem_real_cost_price = (new StringBuilder("real_cost_price")).append(i).toString();
								String tem_amount_unit = (new StringBuilder("amount_unit")).append(i).toString();
								String product_name = request.getParameter(tem_product_name);
								String product_ID = request.getParameter(tem_product_ID);
								String product_describe = request.getParameter(tem_product_describe);
								String amount1 = request.getParameter(tem_amount);
								String off_discount = request.getParameter(tem_off_discount);
								String list_price2 = request.getParameter(tem_list_price);
								StringTokenizer tokenTO2 = new StringTokenizer(list_price2, ",");
								String list_price;
								String list_price1;
								for (list_price = ""; tokenTO2.hasMoreTokens(); list_price = (new StringBuilder(String.valueOf(list_price))).append(list_price1).toString())
									list_price1 = tokenTO2.nextToken();

								String cost_price2 = request.getParameter(tem_cost_price);
								StringTokenizer tokenTO3 = new StringTokenizer(cost_price2, ",");
								String cost_price;
								String cost_price1;
								for (cost_price = ""; tokenTO3.hasMoreTokens(); cost_price = (new StringBuilder(String.valueOf(cost_price))).append(cost_price1).toString())
									cost_price1 = tokenTO3.nextToken();

								String real_cost_price2 = request.getParameter(tem_real_cost_price);
								StringTokenizer tokenTO4 = new StringTokenizer(real_cost_price2, ",");
								String real_cost_price;
								String real_cost_price1;
								for (real_cost_price = ""; tokenTO4.hasMoreTokens(); real_cost_price = (new StringBuilder(String.valueOf(real_cost_price))).append(real_cost_price1).toString())
									real_cost_price1 = tokenTO4.nextToken();

								String amount_unit = request.getParameter(tem_amount_unit);
								double amount = 0.0D;
								double subtotal = Double.parseDouble(list_price) * (1.0D - Double.parseDouble(off_discount) / 100D) * Double.parseDouble(amount1);
								double cost_price_after_discount_sum = Double.parseDouble(cost_price) * Double.parseDouble(amount1);
								double real_cost_price_after_discount_sum = Double.parseDouble(real_cost_price) * Double.parseDouble(amount1);
								sale_price_sum += subtotal;
								cost_price_sum += cost_price_after_discount_sum;
								real_cost_price_sum += real_cost_price_after_discount_sum;
								double order_sale_bonus_subtotal = (getRateFromID.getRateFromID((String)dbSession.getAttribute("unit_db_name"), "design_file", "product_ID", product_ID, "order_sale_bonus_rate") * subtotal) / 100D;
								double order_profit_bonus_subtotal = 0.0D;
								String sql1 = (new StringBuilder("update purchase_discussion_details set product_ID='")).append(product_ID).append("',product_name='").append(product_name).append("',product_describe='").append(product_describe).append("',list_price='").append(list_price).append("',amount='").append(amount1).append("',cost_price='").append(cost_price).append("',off_discount='").append(off_discount).append("',subtotal='").append(subtotal).append("' where discussion_ID='").append(discussion_ID).append("' and details_number='").append(i).append("'").toString();
								purchase_db.executeUpdate(sql1);
								String product_type = "";
								String sql16 = (new StringBuilder("select * from design_file where product_ID='")).append(product_ID).append("'").toString();
								ResultSet rs16 = purchase_db.executeQuery(sql16);
								if (rs16.next())
									product_type = rs16.getString("type");
							}

						}
						catch (Exception ex)
						{
							ex.printStackTrace();
						}
						response.sendRedirect((new StringBuilder("draft/purchase/discussion_choose_attachment.jsp?discussion_ID=")).append(discussion_ID).toString());
					} else
					{
						response.sendRedirect("draft/purchase/discussion_ok.jsp?finished_tag=0");
					}
				} else
				{
					response.sendRedirect("draft/purchase/discussion_ok.jsp?finished_tag=2");
				}
				purchase_db.commit();
				purchase_db.close();
			} else
			{
				response.sendRedirect("error_conn.htm");
			}
		}
		catch (Exception ex)
		{
			ex.printStackTrace();
		}
	}
}
